The present invention relates generally to data communications networks and more particularly relates to a system for assigning wavelengths in an optical switch capable of handling unicast, broadcast and multicast data traffic.
More and more reliance is being placed on data communication networks to carry increasing amounts of data. In a data communications network, data is transmitted from end to end in groups of bits which are called packets, frames, cells, messages, etc. depending on the type of data communication network. For example, Ethernet networks transport frames, X.25 and TCP/IP networks transport packets and ATM networks transport cells. Regardless of what the data unit is called, each data unit is defined as part of the complete message that the higher level software application desires to send from a source to a destination. Alternatively, the application may wish to send the data unit to multiple destinations.
ATM originated as a telecommunication concept defined by the Comite Consulatif International Telegraphique et Telephonique (CCITT), now known as the ITU, and the American National Standards Institute (ANSI) for carrying user traffic on any User to Network Interface (UNI) and to facilitate multimedia networking between high speed devices at multi-megabit data rates. ATM is a method for transferring network traffic, including voice, video and data, at high speed. Using this connection oriented switched networking technology centered around a switch, a great number of virtual connections can be supported by multiple applications through the same physical connection. The switching technology enables bandwidth to be dedicated for each application, overcoming the problems that exist in a shared media networking technology, like Ethernet, Token Ring and Fiber Distributed Data Interface (FDDI). ATM allows different types of physical layer technology to share the same higher layerxe2x80x94the ATM layer.
ATM uses very short, fixed length packets called cells. The first five bytes, called the header, of each cell contain the information necessary to deliver the cell to its destination. The cell header also provides the network with the ability to implement congestion control and traffic management mechanisms. The fixed length cells offer smaller and more predictable switching delays as cell switching is less complex than variable length packet switching and can be accomplished in hardware for many cells in parallel. The cell format also allows for multi-protocol transmissions. Since ATM is protocol transparent, the various protocols can be transported at the same time. With ATM, phone, fax, video, data and other information can be transported simultaneously.
ATM is a connection oriented transport service. To access the ATM network, a station requests a virtual circuit between itself and other end stations, using the signaling protocol to the ATM switch. ATM provides the User Network Interface (UNI) which is typically used to interconnect an ATM user with an ATM switch that is managed as part of the same network.
Using ATM network technology as an example, the current topology of high performance ATM local area networks (LANs) includes ATM core switches at the backbone and an edge device having an ATM downlink to the one or more core switches. When a connection is established between two edge devices, the traffic must pass through the ATM switches in the core. Therefore, in order to support all potential connections between all edge devices, the ATM switches at the core need to be non blocking. Non blocking ATM switches are difficult to develop and thus are much more expensive.
In addition to the above disadvantage, the resulting network may be limited in bandwidth. When attempting to establish large numbers of connections from the. edge device, there may be a need for faster downlink data rates. Depending on the number of connections and the throughput required for each connection, the downlink capacity might not be sufficient to meet the needs of users.
An additional disadvantage is the amount of physical wiring required to implement such a network. In practice, each edge device must be connected to the ATM core via physical wires (i.e., cables). When considering a typical office building there may be many wires installed in parallel. A separate cable from each edge device on each floor must be run down to the ATM core farm that typically is located in the basement. Wherever the switch core farm or server farm is located, cables must be run from the switch core farm to each edge device. The total length of the required cabling can be relatively very high and thus have an associated very high cost.
The cost may be even higher depending on the type and length of cabling used. For example, in ATM networks, it is common to run high speed fiber optic cable from the ATM switch core to all the edge devices in the network. Data rates may range from OC-3 155 Mbps to OC-12 622 Mbps on the optical fiber, for example. Note that each optical fiber used in the network carries only a single communication channel using a single wavelength of light. If it is desired to maintain several communications channels at one time, more than one optical fiber is required. Using prior art transmission techniques, each communication channel requires a separate optical fiber.
Today, most legacy local area networks utilize ATM technology in combination with Switched Ethernet or Token Ring network topologies. The existing switching technology enables each user on the network to have their own dedicated bandwidth, e.g., 10 Mbps or 100 Mbps, for their networked software applications. Each user is given network connectivity to the local switched hub, e.g., 100 Mbps for a Fast Ethernet network interface card (NIC). In typical office building environments, each floor is provided with one or more switched hubs that users are directly connected to. If the switched hub has sixteen 10 Mbps ports than it may potentially be forced to handle 1,600 Mbps data rate from all the connected users.
Currently available conventional technology, using electrical processing, forces the switched hub to analyze every bit of information and to determine its destination. Even in the event that most of the data is not switched between the local ports on the switch but rather is passed up to higher levels of switching, all the information must still be analyzed by the switched hub. This bottleneck for data that is not switched locally leads to high data rates within the switch. The high internal data rates result in a more complicated design in terms of both hardware and software, thus increasing the cost of the switch.
A networking strategy commonly used today is to use an all Ethernet network comprising a plurality of switches (switching hubs) connected to a network backbone. Each floor in the enterprise has one or more switched hubs connected to end users. Each switch comprises a port interface section, switch section and an interface that is typically at a higher speed that the port interfaces. A plurality of ports connects the end users to the switch.
Each switch on each floor is connected via a dedicated physical cable to the network backbone. The network backbone comprises one or more switches connected in some arrangement. In addition, the switches or other network equipment from one or more other buildings may be connected to this network. An example of a suitable workstation Ethernet switch is the LinkSwitch 2700 manufactured by 3Com Corporation, Santa Clara, Calif.
Each end user on the network is connected to a port in one of the switches at a rate of either 10 or 100 Mbps. The link between each switch and the network backbone may be over fiber optic cable at Fast Ethernet or 1 Gbps data rates, for example. Alternatively, the downlinks from each of the switched hubs to the network backbone can be a protocol other then Ethernet, such as ATM, FDDI, etc. For example, the interface portion may comprise an ATM interface, FDDI interface, etc. If a protocol other then Ethernet, e.g., ATM, is used on the downlinks from the switched to the network backbone, than some form of local area network emulation (LANE) must be used to provide Ethernet connectivity between end users.
In many cases, the protocol in use on the downlinks will differ from the protocol used on the connections to the end users, e.g., 10 Mbps to the end users and ATM on the downlinks. It is important to note, however, that regardless of the protocol used on the downlinks, a separate cable (optical fiber or copper) is required from each switched hub to the network backbone.
This commonly used network topology has several disadvantages. One disadvantage is that depending on the length and type of cabling used, the cost could end up being quite high. In addition, depending on the number of switches used in the network, the number of individual fiber optic cables could be very high. Another disadvantage is that the bandwidth available from each floor to the network backbone is limited. For example if fast Ethernet 100 Mbps is used, that the maximum bandwidth available to the switch is 100 Mbps, no more.
Also, another disadvantage is that the only type of connections possible using such a network topology are point to point connections. Multicast (MC) connections are possible but they are not simple or trivial to implement. Multicast connections require large amounts of overhead to implement whereby each call must be routed through the network backbone. Multicast connections also require special call setup procedures that can be potentially draining on system resources if the number of connections is large.
Another disadvantage is that the network backbone must be used to establish many of the connections. The connections that must be routed through the backbone include any connection between two different switches.
Wave division multiplexing (WDM) technology enables the simultaneous transmission of multiple data channel connections on the same physical optical fiber. This is achieved by utilizing several different wavelengths on the same optical fiber at the same time. The WDM transmission network comprises a plurality of optical transmitters, a wave division multiplexor, optical transmitter, optical fiber transmission line, optical receiver, wave division demultiplexor and a plurality of optical receivers.
Using this type of network, several data sources can be sent simultaneously into the WDM mux whereby each data source uses a different wavelength. The optical WDM mux functions to combine the different wavelengths into one optical transmission light beam. This optical light beam is transmitted onto the optical fiber using the optical transmitter. The fiber carries all the connections simultaneously. The optical light beam reaches the optical receiver that outputs the light beam to the WDM demux. The WDM demux functions to split the optical light beam into the different wavelengths that were originally sent. The different wavelength outputs of the WDM demux are input to the individual receivers that convert the light energy into electrical signals.
Currently, the major use of WDM technology is in Wide Area Network (WAN) applications. The majority of WANs installed already have a large installed base of optical fiber. The optical fiber installed in WANs typically carry very high data rate traffic on the order of many gigabits per second. In addition, the demand for bandwidth and capacity is growing at an explosive rate. Today""s WAN installations are being pushed to capacity in order to satisfy the demand for increasing levels of bandwidth.
Two different techniques can be used to transmit data at higher rates: (1) adding additional optical fibers or (2) to increase the rate of data at the edge devices on either end of the optical fiber. Both of these solutions are very costly: installing additional fiber optic cable is very costly and developing faster end equipment is difficult and expensive.
Currently available WDM technology, however, is a viable alternative to installing new fiber optic cable or upgrading the equipment on either end of the fiber. Using conventional WDM technology, several xe2x80x98slowxe2x80x99 conventional end devices can be connected to a WDM mux whereby several slower data sources are combined onto the same fiber and transmitted to the other end. At the far end of the fiber optic cable, the operation is reversed, i.e., the optical signal is optically WDM demuxed. Thus, WDM technology can be used as a bandwidth concentrator.
In a conventional switch, the assignment of a wavelength to an input data stream defines a specific path between an input port and an output port. In a broadcast connection, the data must be forwarded to all the ports. This means the transmitters must transmit on all wavelengths simultaneously, which is physically impossible. Further, in the case of a multicast connection, the problem is even more complicated. The transmitter port must transmit to a select group of ports wherein the members of the group are constantly changing. In the optical domain, this translates to sending multiple wavelengths simultaneously whereby the wavelengths are changing in random fashion, which is very difficult and impractical to achieve.
Further, in an optical switch, when assigning a wavelength to an input data port, the designated wavelength cannot be used by other inputs in order to prevent congestion at the output port. Since all the inputs can transmit to all the outputs in the switch, there is a need for a central entity that assigns the wavelengths to the input ports in such a manner that the congestion problem is addressed while the data traffic does suffer from overloading of the buffers.
Throughout this document the term wave division multiplexing (WDM) denotes using a single optical fiber to transmit several communications channels simultaneously whereby each channel transmits data utilizing a different wavelength of light. The term dense wavelength division multiplexing (DWDM) denotes WDM that utilizes several wavelengths of light that are relatively close to one another.
The type of environment suitable for application of the present invention is any data communications network such as. found on college campuses or other large enterprises. Many companies that currently implement data networks with backbones using switched Ethernet and/or ATM technology can benefit from the features of the present invention. The optical switching system of the present invention, in combination with wave division multiplexing, provides a novel solution to the problems of the prior art described above.
The present invention utilizes WDM or DWDM technology to construct an optical switch suitable for use in both WAN and LAN environments. Devices are connected to the optical switch via a physical interface (I/F) module or card. The output of the I/F card is input to the switch and assigned a separate wavelength via a tunable electrical to optical transmitter. The output of all the transmitters are input to a star coupler which combines all the optical signals into a single optical output signal. This signal, in turn, is input to an optical demultiplexor which functions to split the incoming optical signal into a plurality of separate wavelengths with each wavelength steered to a particular output port. The output of each port, corresponding to a particular wavelength, is then converted into an electrical signal by an optical to electrical receiver. This first embodiment of the switch supports unicast connects. A controller configures the tunable transmitters to a particular wavelength in accordance with the desired output port for that input.
A plurality of unicast connections can be established simultaneously by assigning each tunable transmitter a different wavelength such that all wavelengths are mutually exclusive with each other. No two transmitters are tuned to the same wavelength at the same time. This prevents the unicast connections from overlapping with each over in the switch.
In a unicast connection, only the two end nodes transmit or receive the optical signals on the particular wavelength assigned to the connection. In a second embodiment of the optical switch, broadcast and multicast connections are handled. In a broadcast connection, the source node transmits and all output ports receive the optical signal on the particular wavelength assigned to that port. One port transmits data while the rest of the input ports are placed in an idle state. The output of each port is input to a multiplexor along with an output of the optical demux dedicated to broadcast traffic. A controller switches the multiplexors to output the broadcast signal such that all receivers output the same signal.
Multicast traffic is handled similarly except that rather than switch all the multiplexors to the dedicated multicast signal, only selected multiplexors are switched. The remaining multiplexors carry unicast traffic as normal. As a result, the output ports of the members of the multicast group all output the same signal.
The invention also comprises a system for assignment of wavelengths to each of the tunable transmitters. For each unit of data, i.e., packet, frame, cell, etc., to be transmitted, the I/F card sends a request to the switch module. A central control unit in the switch module processes the requests from all I/F cards in parallel and sends acknowledgement (ACK) data to each I/F card. The ACK includes the available wavelength to be used by that particular I/F card during the next time slot or data cycle. The system comprises means for handling unicast, broadcast and multicast traffic.
There is provided in accordance with the present invention a wavelength assignment apparatus for use in an optical switching matrix, the optical switching matrix having N input ports and N output destination ports, each input port having a corresponding interface (I/F) card coupled thereto, the apparatus comprising a controller adapted to receive requests from the N I/F cards, each request indicating that an I/F card has data ready to input to the switching matrix, the controller adapted to output acknowledgements to the N I/F cards, each acknowledgement indicating the designated wavelength and destination port assigned to the I/F card, a request map table for storing the plurality of requests received from the I/F cards, a bit being set in the request map table to indicate a request for an I/F card to send data to a particular destination port, a processing map table for temporarily holding the current state of the request map table, the contents of the request map table periodically being copied to the processing map table and the controller operative to assign the destination ports to the I/F cards such each I/F card is assigned no more than one destination port and each destination port is assigned to no more than one I/F card.
The request map table and the processing map table comprise tables N rows by N columns and the controller is adapted to receive the requests via a request bus N bits wide, each bit indicating a different destination port or the controller can be adapted to receive the requests via a request bus log2N bits wide, each request indicating the number corresponding to a destination port. In addition, the controller is adapted to perform a two way round robin selection in assigning destination ports to the I/F cards.
There is also provided in accordance with the present invention a wavelength assignment apparatus for use in an optical switching matrix, the optical switching matrix having N input ports and N output destination ports, each input port having a corresponding interface (I/F) card coupled thereto, the apparatus comprising a controller adapted to receive requests from the N I/F cards, each request indicating that an I/F card has data ready to input to the switching matrix, the controller adapted to output acknowledgements to the N I/F cards, each acknowledgement indicating the designated wavelength and destination port assigned to the I/F card, a request map table for storing the plurality of requests received from the I/F cards, a bit being set in the request map table to indicate a request for an I/F card to send data to a particular destination port, a processing map table for temporarily holding the current state of the request map table, the contents of the request map table periodically being copied to the processing map table, the controller operative to assign the destination ports to the I/F cards such each I/F card is assigned no more than one destination port and each destination port is assigned to no more than one I/F card for unicast connections, broadcast means adapted to assign a single I/F card a broadcast slot while preventing all other I/F cards from sending any data to the destination ports and multicast means adapted to assign a multicast slot comprising a plurality of destination ports to a single I/F card while permitting any remaining destination ports to be assigned to other I/F cards.
The request map table and the processing map table comprise tables N rows by N+2 columns, the N+1th column representing a broadcast column and the N+2nd column representing a multicast column. The controller is adapted to receive the requests via a request bus N+1 bits wide, N bits indicating a different destination port with the N+1th bit indicating a broadcast/multicast request or the controller is adapted to receive the requests via a request bus log2N bits wide, each request indicating the number corresponding to a destination port. The controller is also adapted to receive a multicast bit map representing destination ports to be included in a multicast group, perform a two way round robin selection in assigning destination ports to the I/F cards and to assign weights to the destination ports and to requests for broadcast and multicast connections.
There is further provided in accordance with the present invention, in an optical switching matrix having N input ports and N output destination ports, each input port having a corresponding interface (I/F) card coupled thereto, a method for assigning wavelengths to the input ports, the method comprising the steps of receiving one or more requests from the I/F cards and storing them in a request map table, a bit being set in the request map table to indicate a request for an I/F card to send data to a particular destination port, periodically copying the contents of the request map table to a processing map table, assigning a destination port to each requesting I/F card such each I/F card is assigned no more than one destination port and each destination port is assigned to no more than one I/F card and removing the request for a particular destination port once being assigned to an I/F card.
The step of assigning a destination port to each requesting I/F card comprises the steps of performing a two way round robin technique through the columns and then rows of the processing map table to search for set bits and clearing the remaining bits in the particular row and column once a set bit is found so as to prevent the same destination port from being assigned to another I/F card.
The step of removing the request for a particular destination port comprises the step of clearing a bit in the request map table corresponding to the destination port assigned to a particular I/F card.